home *** CD-ROM | disk | FTP | other *** search
Wrap
10 CLEAR:KEY OFF:OPTION BASE 1:DIM DA$(20),DB$(20),DC(20),DD$(20),DE(20),DF(20),DG$(20),OA(20),TA$(20),DH(20),DI(20),ROW$(20):SA$=STRING$(50," "):SB$=STRING$(59," "):SC$=STRING$(70," "):SD$=STRING$(65," "):SE$=STRING$(79," "):ON ERROR GOTO 2250 20 CLS:LOCATE 12,25:COLOR 11:PRINT"SPECIFY DRIVE FOR WORK FILES: "; 30 DRV$=INKEY$:IF DRV$=""THEN 30 ELSE DRV$=DRV$+":":PRINT DRV$ 40 FOR I=1 TO 250:NEXT 50 COLOR 0:FILES DRV$+"items":COLOR 7 60 OPEN DRV$+"cat" FOR INPUT AS #1:FOR I=1 TO 20:IF EOF(1)THEN CLOSE:GOTO 80 70 INPUT#1,CAT$,REC:DA$(I)=CAT$:DC(I)=REC:NEXT:INPUT#1,LA$:CLOSE 80 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,32:COLOR 13:PRINT" MAIN MENU ":LOCATE 4,32:COLOR 11:PRINT" _________ ":LOCATE 7,25:COLOR 11:PRINT"< 1 > ";:COLOR 12:PRINT"SHOPPING UPDATE 90 LOCATE 9,25:COLOR 11:PRINT"< 2 > ";:COLOR 12:PRINT"DISPLAY/PRINT SHOPPING LIST":LOCATE 11,25:COLOR 11:PRINT"< 3 > ";:COLOR 12:PRINT"DISPLAY/PRINT ITEM FILE":LOCATE 13,25:COLOR 11:PRINT"< 4 > ";:COLOR 12:PRINT"STATISTICS 100 LOCATE 15,25:COLOR 11:PRINT"< 5 > ";:COLOR 12:PRINT"FILE MAINTENANCE":LOCATE 17,25:COLOR 11:PRINT"< 6 > ";:COLOR 12:PRINT"EXIT PROGRAM 110 LOCATE 20,18,1:COLOR 11:PRINT"Enter Selection: "; 120 Q$=INKEY$:IF Q$=""THEN 120 ELSE IF Q$="1"THEN 330 ELSE 130 130 IF Q$="2"THEN 250 ELSE IF Q$="3"THEN 290 ELSE IF Q$="4"THEN 2720 ELSE IF Q$="5"THEN 1160 ELSE IF Q$="6"THEN CLOSE:GOTO 2900 ELSE LOCATE 20,35:BEEP:PRINT" ":GOTO 110 140 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,30:COLOR 13:PRINT"UPDATE SHOPPING LIST":LOCATE 4,30:COLOR 11:PRINT"____________________":GOSUB 2080:LOCATE 23,20:COLOR 11:INPUT;"Enter Category Number";CA$:IF CA$=""THEN 80 150 CLS:LOCATE 1,30:COLOR 13:PRINT"UPDATE SHOPPING LIST":CA=VAL(CA$):RB=DC(CA):IF DA$(CA)<>"X"THEN 170 ELSE LOCATE 6,5,0:COLOR 11:BEEP:PRINT"CATEGORY NOT NAMED":LOCATE 23,30,1:PRINT"Press <ENTER> to Quit: "; 160 Q$=INKEY$:IF Q$=""THEN 160 ELSE 140 170 NA=0:GOSUB 2160:IF NA=0 THEN 190 ELSE GOSUB 2500:BEEP:PRINT"NO ITEMS TO CHANGE - PRESS ENTER: "; 180 Q$=INKEY$:IF Q$=""THEN 180 ELSE 140 190 CLS:COLOR 11:LOCATE 1,10:PRINT"ITEM NAME DESCRIPTION ALLOTTED IN STOCK":LOCATE 23,33,0:COLOR 11:PRINT"ENTER 'q' TO QUIT";:R=2:FOR I=1 TO 20:IF DB$(I)=""THEN EA=I:GOTO 210 200 LOCATE R,10:COLOR 12:PRINT DB$(I);SPACE$(4);DD$(I);SPACE$(6);DE(I);SPACE$(11);DF(I):R=R+1:NEXT 210 R=2:RC=RB:FOR I=1 TO 20:IF DB$(I)=""THEN EA=I:GOTO 140 220 LOCATE R,65,1:COLOR 11 230 Q$=INKEY$:IF Q$=""THEN 230 ELSE IF Q$=CHR$(13)THEN Q=DF(I) ELSE IF Q$="q"OR Q$="Q"THEN 140 ELSE Q=VAL(Q$) 240 LOCATE R,64,0:PRINT Q :NB=Q:GOSUB 2070:RC=RC+1:R=R+1:NEXT:GOTO 140 250 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,27:COLOR 13:PRINT"DISPLAY/PRINT SHOPPING LIST":LOCATE 4,27:COLOR 11:PRINT"___________________________":LOCATE 11,25:COLOR 11:PRINT"< 1 > ";:COLOR 12:PRINT"DISPLAY SHOPPING LIST 260 LOCATE 13,25:COLOR 11:PRINT"< 2 > ";:COLOR 12:PRINT"PRINT SHOPPING LIST":LOCATE 23,20,1:COLOR 11:PRINT"Enter Selection or 'q' to Quit: 1";:LOCATE 23,53 270 Q$=INKEY$:IF Q$=""THEN 270 ELSE IF Q$="q"OR Q$="Q"THEN 80 280 PRINT Q$:IF Q$=CHR$(13)OR Q$="1"THEN 370 ELSE 680 290 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,28:COLOR 13:PRINT"DISPLAY/PRINT ITEM FILE ":LOCATE 4,28:COLOR 11:PRINT"_______________________ ":LOCATE 9,25:COLOR 11:PRINT"< 1 > ";:COLOR 12:PRINT"DISPLAY ITEM FILE 300 LOCATE 11,25:COLOR 11:PRINT"< 2 > ";:COLOR 12:PRINT"PRINT ITEM FILE":LOCATE 23,20,1:COLOR 11:PRINT"Enter Selection or 'q' to Quit: 1";:LOCATE 23,53 310 Q$=INKEY$:IF Q$=""THEN 310 ELSE IF Q$="q"OR Q$="Q"THEN 80 320 PRINT Q$:IF Q$="1"OR Q$=CHR$(13)THEN 530 ELSE 940 330 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,32,0:COLOR 13:PRINT"SHOPPING UPDATE":LOCATE 4,32:COLOR 11:PRINT"_______________":LOCATE 11,25:COLOR 11:PRINT"< 1 > ";:COLOR 12:PRINT"UPDATE SHOPPING LIST 340 LOCATE 13,25:COLOR 11:PRINT"< 2 > ";:COLOR 12:PRINT"UPDATE PURCHASES":LOCATE 23,20,1:COLOR 11:PRINT"Enter Selection or 'q' to Quit: 1";:LOCATE 23,53 350 Q$=INKEY$:IF Q$=""THEN 350 ELSE IF Q$="q"OR Q$="Q"THEN 80 360 PRINT Q$:IF Q$=CHR$(13)OR Q$="1"THEN 140 ELSE 1480 370 GOSUB 380:GOTO 400 380 CLS:LOCATE 1,30,0:COLOR 13:PRINT"DISPLAY SHOPPING LIST":LOCATE 3,10:COLOR 13:PRINT" ITEM DESCRIPTION AMOUNT PRICE TOTAL":LOCATE 4,10:COLOR 11:PRINT"--------------- --------------- ------ ----- -----"; 390 R=5:RETURN 400 GOSUB 2670:B=1:NC=0 410 FOR I=DC(B)TO DC(B)+19:GET#1,I:IF LEFT$(NME$,1)<>" "THEN 430 ELSE B=B+1:NC=0 420 IF B=21 THEN 510 ELSE IF DC(B)=0 THEN 500 ELSE NC=0:R=R+1:GOTO 410 430 SF=CVI(AA$):IA=CVI(IA$):IF SF<=IA THEN 500 440 BUY=SF-IA:PA=VAL(PA$):EB=BUY*PA:IF NC THEN 460 450 IF R=>19 THEN ND=1:LOCATE 23,17,1:COLOR 11:BEEP:PRINT"PRESS ENTER FOR NEXT SCREEN OR 'q' TO QUIT: ";:GOTO 470 ELSE LOCATE R,5:COLOR 13:PRINT DA$(B):R=R+2:ND=1:NC=1 460 IF R<21 THEN 490 ELSE LOCATE 23,17,1:COLOR 11:BEEP:PRINT"PRESS ENTER FOR NEXT SCREEN OR 'q' TO QUIT: "; 470 Q$=INKEY$:IF Q$=""THEN 470 ELSE IF Q$="q"OR Q$="Q"THEN CLOSE:GOTO 80 480 GOSUB 380:IF ND AND LEFT$(NME$,1)<>" "THEN R=R+1:LOCATE R,5:COLOR 13:PRINT DA$(B):ND=0:R=R+2 490 LOCATE R,10,0:COLOR 12:PRINT NME$;SPACE$(4);DJ$;SPACE$(4);BUY;:LOCATE R,51:PRINT USING "$$##.##";PA;:LOCATE R,66:PRINT USING "$$##.##";EB:R=R+1 500 NEXT I 510 CLOSE:COLOR 13:LOCATE 23,20,1:BEEP:PRINT"END OF LIST - PRESS ENTER FOR MAIN MENU: "; 520 Q$=INKEY$:IF Q$=""THEN 520 ELSE 80 530 GOSUB 540:GOTO 550 540 CLS:LOCATE 1,32:COLOR 13:PRINT"DISPLAY ITEM FILE":LOCATE 3,5:PRINT" ITEM DESCRIPTION ALLOCATED IN STOCK PRICE":LOCATE 4,5:COLOR 11:PRINT"--------------- --------------- --------- -------- -----";:R=5:RETURN 550 GOSUB 2670:B=1:NC=0:ND=1 560 FOR I=DC(B)TO DC(B)+19:GET#1,I:J=ASC(MID$(NME$,1,1)):IF J=32 OR J=0 THEN B=B+1:NC=0:GOTO 570 ELSE 580 570 IF B=21 THEN 660 ELSE 560 580 SF=CVI(AA$):IA=CVI(IA$):PA=VAL(PA$):IF NC THEN 620 590 IF R=>19 THEN ND=1:LOCATE 23,17,1:COLOR 11:BEEP:PRINT"PRESS ENTER FOR NEXT SCREEN OR 'q' TO QUIT: ";:GOTO 630 600 IF ND THEN 610 ELSE R=R+1 610 LOCATE R,1:COLOR 13:PRINT DA$(B):R=R+2:ND=1:NC=1:GOTO 650 620 IF R<21 THEN 650 ELSE LOCATE 23,17,1:COLOR 11:BEEP:PRINT"PRESS ENTER FOR NEXT SCREEN OR 'q' TO QUIT: "; 630 Q$=INKEY$:IF Q$=""THEN 630 ELSE IF Q$="q"OR Q$="Q"THEN CLOSE:GOTO 80 640 GOSUB 540:J=ASC(MID$(NME$,1,1)):IF J=32 AND ND OR J=0 AND ND THEN LOCATE R,1:COLOR 13:PRINT DA$(B):ND=0:R=R+2 650 LOCATE R,5,0:COLOR 12:PRINT NME$;SPACE$(4);DJ$;SPACE$(6);SF;SPACE$(10);IA;:LOCATE R,65:PRINT USING "$$##.##";PA:R=R+1:NEXT I 660 CLOSE:COLOR 13:LOCATE 23,20,1:BEEP:PRINT"END OF LIST - PRESS ENTER FOR MAIN MENU: "; 670 Q$=INKEY$:IF Q$=""THEN 670 ELSE 80 680 SG$="":OB=0:A=0:CLS:LOCATE 1,32,0:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 4,31:COLOR 11:PRINT"___________________":LOCATE 3,31,0:COLOR 13:PRINT"PRINT SHOPPING LIST":LOCATE 14,25,1:COLOR 11:PRINT"Re - order Categories? (y/n/q): n";:LOCATE 14,57 690 Q$=INKEY$:IF Q$=""THEN 690 ELSE IF Q$=CHR$(13)THEN PRINT"N":GOTO 700 ELSE IF Q$="q"OR Q$="Q"THEN 80 ELSE GOSUB 2510:GOTO 720 700 FOR I=1 TO 20:OA(I)=DC(I):TA$(I)=DA$(I):NEXT:LOCATE 14,25,0:COLOR 12:PRINT"TURN ON PRINTER AND ALIGN PAPER ":LOCATE 16,25:PRINT" PRESS ENTER WHEN READY " 710 Q$=INKEY$:IF Q$=""THEN 710 720 CLS:BEEP:LOCATE 3,32,0:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 14,23:COLOR 11:PRINT"<< SHOPPING LIST BEING PRINTED >>":WIDTH"LPT1:",80:GOSUB 730:GOTO 750 730 LNO=5:LPRINT TAB(32);:LPRINT"SHOPPING LIST":LPRINT TAB(32);:LPRINT"-------------":IF SG$=""THEN 740 ELSE A$=SG$:GOSUB 2680:LPRINT:LPRINT:LPRINT TAB(32);:LPRINT"STORE: ";A$ 740 LPRINT:LPRINT:LPRINT" CATEGORY ITEM DESCRIPTION AMOUNT PRICE TOTAL":LPRINT"--------------- --------------- --------------- ------ ----- -----";:RETURN 750 GOSUB 2670:GOSUB 1130:B=1:TB=0 760 FOR I=OA(B)TO OA(B)+19:GET#1,I:IF LEFT$(TA$(B),12)="OTHER STORES"THEN BB=B:GOTO 860 770 J=ASC(MID$(NME$,1,1)):IF J=0 OR J=32 THEN B=B+1:IF OA(B)=0 THEN 850 ELSE FA=0:R=R+1:GOTO 760 780 SF=CVI(AA$):IA=CVI(IA$):IF SF<=IA THEN 840 790 BUY=SF-IA:TOT=1:A=A+1:GOSUB 1150:PA=VAL(PA$):EB=BUY*PA:IF FA THEN 820 800 IF LNO=>68 THEN LPRINT CHR$(12):GOSUB 730 810 LPRINT:LPRINT:LPRINT TA$(B);:LPRINT TAB(18);:FA=1:LNO=LNO+5:GOTO 830 820 LPRINT TAB(18); 830 LPRINT NME$;:LPRINT TAB(36);:LPRINT DJ$;:LPRINT TAB(55);:LPRINT BUY;:LPRINT TAB(61);:LPRINT USING "$$##.##";PA;:LPRINT TAB(69);:LPRINT USING "$$##.##";EB:TB=TB+EB:LNO=LNO+1:GOTO 840 840 NEXT I 850 CLOSE 860 IF LNO=>68 THEN LPRINT CHR$(12):GOSUB 730 870 LPRINT:LPRINT:LPRINT TAB(50);:LPRINT "*** TOTAL ***";:LPRINT TAB(68);:LPRINT USING"$$###.##";TB:LPRINT CHR$(12):LNO=5:FB=1:FOR I=OA(BB)TO OA(BB)+19:GET#1,I 880 J=ASC(MID$(NME$,1,1)):IF J=0 OR J=32 THEN CLOSE:LPRINT CHR$(12):LPRINT CHR$(12):BEEP:GOTO 80 890 SF=CVI(AA$):IA=CVI(IA$):IF SF<=IA THEN 930 ELSE IF FB THEN GOSUB 740:FB=0 900 BUY=SF-IA:A=A+1:GOSUB 1150:PA=VAL(PA$):EB=BUY*PA:IF I<>1 THEN LPRINT:GOTO 920 910 LPRINT:LPRINT TA$(BB);:LPRINT TAB(18);:LNO=LNO+5 920 LPRINT TAB(18);:LPRINT NME$;:LPRINT TAB(36);:LPRINT DJ$;:LPRINT TAB(55);:LPRINT BUY;:LPRINT TAB(61);:LPRINT USING "$$##.##";PA;:LPRINT TAB(69);:LPRINT USING "$$##.##";EB:LNO=LNO+1:IF LNO=>68 THEN LPRINT CHR$(12):GOSUB 730 930 NEXT I:CLOSE:LPRINT CHR$(12):BEEP:GOTO 80 940 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,32,0:COLOR 13:PRINT"PRINT ITEM FILE":LOCATE 4,32:COLOR 11:PRINT"_______________":LOCATE 14,25,0:COLOR 12:PRINT"TURN ON PRINTER AND ALIGN PAPER " 950 LOCATE 17,25:PRINT" PRESS ENTER WHEN READY " 960 Q$=INKEY$:IF Q$=""THEN 960 970 CLS:BEEP:LOCATE 3,32,0:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 14,25:COLOR 11:PRINT"<< ITEM FILE BEING PRINTED >>":WIDTH"LPT1:",80:GOSUB 980:GOTO 1000 980 LNO=5:LPRINT TAB(32);:LPRINT" ITEM FILE ":LPRINT TAB(32);:LPRINT"-------------":LPRINT:LPRINT:LPRINT" CATEGORY ITEM DESCRIPTION ALLOTED IN STOCK PRICE 990 LPRINT"--------------- --------------- --------------- ------- -------- -----";:LPRINT:RETURN 1000 GOSUB 2670:L=21:N=40:M=1:TB=0 1010 FOR I=L TO N:GET#1,I:IF L=401 THEN 1070 ELSE J=ASC(MID$(NME$,1,1)):IF J=0 OR J=32 THEN L=L+20:N=N+20:FA=0:R=R+1:M=M+1:GOTO 1010 1020 SF=CVI(AA$):IA=CVI(IA$):PA=VAL(PA$):IF FA THEN 1050 1030 IF LNO=>68 THEN LPRINT CHR$(12):GOSUB 980 1040 LPRINT:LPRINT DA$(M);:LPRINT TAB(18);:FA=1:LNO=LNO+5:IF LNO=>68 THEN LPRINT CHR$(12):GOSUB 980:GOTO 1060 1050 LPRINT TAB(18); 1060 LPRINT NME$;:LPRINT TAB(36);:LPRINT DJ$;:LPRINT TAB(56);:LPRINT SF;:LPRINT TAB(66);:LPRINT IA;:LPRINT TAB(73);:LPRINT USING "$$##.##";PA:LNO=LNO+1:NEXT I 1070 FOR I=1 TO 20:GET#1,I:J=ASC(MID$(NME$,1,1)):IF J=0 OR J=32 THEN CLOSE:LPRINT CHR$(12):BEEP:GOTO 80 1080 SF=CVI(AA$):IA=CVI(IA$):PA=VAL(PA$):IF FA THEN 1110 1090 IF LNO=>68 THEN LPRINT CHR$(12):GOSUB 980 1100 LPRINT:LPRINT:LPRINT DA$(20);:LPRINT TAB(18);:FA=1:LNO=LNO+5:GOTO 1120 1110 LPRINT TAB(18); 1120 LPRINT NME$;:LPRINT TAB(36);:LPRINT DJ$;:LPRINT TAB(56);:LPRINT SF;:LPRINT TAB(66);:LPRINT IA;:LPRINT TAB(73);:LPRINT USING "$$##.##";PA:LNO=LNO+1:NEXT I:CLOSE:LPRINT CHR$(12):BEEP:GOTO 80 1130 KILL DRV$+"temp 1140 OPEN DRV$+"temp" AS #3 LEN=36:FIELD #3,15 AS TC$,15 AS TD$,2 AS TE$,2 AS TF$,2 AS TG$:RETURN 1150 LSET TC$=NME$:LSET TD$=DJ$:RSET TE$=AA$:RSET TF$=IA$:RSET TG$=MKI$(I):PUT#3,A:RETURN 1160 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 4,32:COLOR 11:PRINT"________________":LOCATE 7,25:COLOR 11:PRINT"< 1 > ";:COLOR 12:PRINT"ADD A CATEGORY 1170 LOCATE 9,25:COLOR 11:PRINT"< 2 > ";:COLOR 12:PRINT"ADD AN ITEM":LOCATE 11,25:COLOR 11:PRINT"< 3 > ";:COLOR 12:PRINT"CHANGE/DELETE A CATEGORY":LOCATE 13,25:COLOR 11:PRINT"< 4 > ";:COLOR 12:PRINT"CHANGE/DELETE AN ITEM 1180 LOCATE 15,25:COLOR 11:PRINT"< 5 > ";:COLOR 12:PRINT"DISPLAY AN ITEM":LOCATE 17,25:COLOR 11:PRINT"< 6 > ";:COLOR 12:PRINT"MAIN MENU 1190 LOCATE 20,18,1:COLOR 11:PRINT"Enter Selection: "; 1200 Q$=INKEY$:IF Q$=""THEN 1200 ELSE IF Q$="1"THEN 1210 ELSE IF Q$="2"THEN 1280 ELSE IF Q$="3"THEN 1600 ELSE IF Q$="4"THEN 1680 ELSE IF Q$="5"THEN 1910 ELSE IF Q$="6"OR Q$=CHR$(13)THEN 80 ELSE LOCATE 20,35:BEEP:PRINT" ":GOTO 1190 1210 OC=0:CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,32:COLOR 13:PRINT" ADD A CATEGORY ":LOCATE 4,32:COLOR 11:PRINT" ______________ ":GOSUB 2080 1220 IF DA$(20)<>""THEN 1240 ELSE LOCATE 23,24:BEEP:COLOR 13:PRINT"NO MORE SPACE - PRESS ENTER: "; 1230 Q$=INKEY$:IF Q$=""THEN 1230 ELSE 80 1240 LOCATE 23,20:COLOR 11:INPUT;"Enter Category Name: ";CAT$:IF CAT$=""THEN 1160 ELSE IF LEN(CAT$)>15 THEN LOCATE 23,41,0:PRINT SPACE$(30);:BEEP:GOTO 1240 ELSE A$=CAT$:GOSUB 2680:CAT$=A$ 1250 GOSUB 2500:PRINT"Is Category Name OK? (y/n/q): y";:LOCATE 23,51 1260 Q$=INKEY$:IF Q$=""THEN 1260 ELSE IF Q$="q"THEN 1160 ELSE IF Q$=CHR$(13)THEN 1270 ELSE PRINT"N":GOTO 1210 1270 DA$(NE)=CAT$:GOSUB 2050:GOTO 1210 1280 CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,32:COLOR 13:PRINT" ADD AN ITEM ":LOCATE 4,32:COLOR 11:PRINT" ___________ ":GOSUB 2080:LOCATE 23,20:COLOR 11:INPUT;"Enter Category Number";CA$:IF CA$=""THEN 1160 1290 CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,32:COLOR 13:PRINT" ADD AN ITEM ":LOCATE 4,32:COLOR 11:PRINT" ___________ " 1300 CA=VAL(CA$):RB=DC(CA):GOSUB 2160:R=7:FOR I=1 TO 10:IF DB$(I)=""THEN NE=RC:GOTO 1360 1310 LOCATE R,1:COLOR 11:PRINT I:LOCATE R,5:COLOR 12:PRINT DB$(I);DD$(I):R=R+1:NEXT:R=7:FOR I=11 TO 20:IF DB$(I)=""THEN NE=RC:GOTO 1360 1320 LOCATE R,45:COLOR 11:PRINT I:LOCATE R,49:COLOR 12:PRINT DB$(I);DD$(I):R=R+1:NEXT 1330 IF I=20 AND DB$(20)=""THEN 1330 ELSE LOCATE 22,18:BEEP:COLOR 11:PRINT"NO MORE ITEM SPACE AVAILABLE - PRESS ENTER: "; 1340 Q$=INKEY$:IF Q$=""THEN 1340 ELSE 1280 1350 LOCATE R,40:COLOR 11:PRINT I:LOCATE R,39:COLOR 12:PRINT DB$(I);DD$(I) 1360 LOCATE 5,5:COLOR 11:IF DA$(CA)="X"THEN PRINT"CATEGORY DOES NOT EXIST":GOTO 1370 ELSE PRINT"CATEGORY = ";DA$(CA):GOTO 1390 1370 LOCATE 23,30,1:COLOR 11:BEEP:PRINT"PRESS <ENTER> TO QUIT: "; 1380 Q$=INKEY$:IF Q$=""THEN 1380 ELSE 1280 1390 LOCATE 19,5:COLOR 13:PRINT"ITEM NAME DESCRIPTION ALLOTTED IN STOCK PRICE":LOCATE 20,5:COLOR 11:PRINT"--------- ----------- -------- -------- ----- 1400 LOCATE 23,20,0:PRINT SA$:LOCATE 23,20,1:COLOR 11:INPUT"Enter Item Name or 'q' to Quit: ";NF$ 1410 IF NF$=""THEN 1280 ELSE IF NF$="q"OR NF$="Q"THEN 1160 ELSE IF LEN(NF$)>15 THEN LOCATE 23,41,0:PRINT SPACE$(35);:BEEP:GOTO 1400 ELSE A$=NF$:GOSUB 2680:NF$=A$ 1420 LOCATE 21,5:COLOR 12:PRINT NF$ 1430 LOCATE 23,20,0:PRINT SA$:LOCATE 23,20,1:COLOR 11:INPUT"Enter Description: ";NG$:A$=NG$:IF LEN(A$)>15 THEN LOCATE 23,40,0:PRINT SPACE$(25);:BEEP:GOTO 1430 ELSE GOSUB 2680:NG$=A$:LOCATE 21,24,0:PRINT SPACE$(15);:LOCATE 21,24:COLOR 12:PRINT NG$ 1440 LOCATE 23,20,0:PRINT SA$:LOCATE 23,20,1:COLOR 11:INPUT"Enter Allotment: ";NH:LOCATE 21,45:COLOR 12:PRINT NH:LOCATE 23,20,0:PRINT SA$:LOCATE 23,20,1:COLOR 11:INPUT"Enter In Stock: ";NB:LOCATE 21,58:COLOR 12:PRINT NB 1450 LOCATE 23,20,0:PRINT SA$:LOCATE 23,20,1:COLOR 11:INPUT"Enter Unit Price: ";NI$:LOCATE 21,69:COLOR 12:PRINT NI$:NI=VAL(NI$):LOCATE 23,20,0:PRINT SA$:LOCATE 23,20,1:COLOR 11:PRINT"Is Item Okay? (y/n): y";:LOCATE 23,42 1460 Q$=INKEY$:IF Q$=""THEN 1460 ELSE IF Q$="n"OR Q$="N"THEN LOCATE 23,42,0:PRINT "N":LOCATE 21,1,0:PRINT SE$:LOCATE 23,20,0:PRINT SA$:GOTO 1400 1470 GOSUB 2230:GOSUB 2490:GOTO 1300 1480 GOSUB 2390:UA=0:CLS:LOCATE 2,30:COLOR 13:PRINT"UPDATE IN STOCK ITEMS":LOCATE 3,30:COLOR 11:PRINT"---------------------":LOCATE 8,5:COLOR 13:PRINT" NAME DESCRIPTION ALLOTTED IN STOCK PURCHASED 1490 LOCATE 9,5:COLOR 11:PRINT"--------------- --------------- ------- --------- ---------":I=1:GOSUB 2670:OPEN DRV$+"temp" AS #3 LEN=36:FIELD #3,15 AS TC$,15 AS TD$,2 AS TE$,2 AS TF$,2 AS TG$ 1500 GET#3,I:TTT=0:PB=0:TG=CVI(TG$):IF TG<=0 THEN LOCATE 11,15:PRINT SD$:GOTO 1570 1510 IF TG>=401 AND TG<=420 THEN GOSUB 1590:GOTO 1560 1520 COLOR 13:LOCATE 11,5:PRINT TC$;:LOCATE 11,24:PRINT TD$;:LOCATE 11,47:PRINT CVI(TE$);:LOCATE 11,57:TF=CVI(TF$):PRINT TF:COLOR 11:LOCATE 11,69,1 1530 Q$=INKEY$:IF Q$=""THEN 1530 ELSE IF Q$=CHR$(13)THEN TH=0:TI=0:GOTO 1550 1540 PRINT Q$:UA=1:AB$=Q$:AB=VAL(AB$):TF=TF+AB 1550 GET#1,TG:TOT=CVI(TOT$):TTT=TOT+1:RSET TOT$=MKI$(TTT):PC=CVI(PC$):PB=PC+AB:RSET PC$=MKI$(PB):RSET IA$=MKI$(TF):PUT#1,TG 1560 I=I+1:LOCATE 11,5,0:PRINT SC$:GOTO 1500 1570 CLOSE:KILL DRV$+"temp":LOCATE 23,15,1:BEEP:COLOR 11:PRINT"END OF LIST - PRESS ENTER TO RETURN TO MAIN MENU: "; 1580 Q$=INKEY$:IF Q$=""THEN 1580 ELSE 80 1590 LSET NME$=" ":LSET DJ$=" ":RSET AA$=" ":RSET IA$=" ":RSET PA$=" ":PUT#1,TG:RETURN 1600 CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,28:COLOR 13:PRINT"CHANGE/DELETE A CATEGORY":LOCATE 4,28:COLOR 11:PRINT"________________________":GOSUB 2080 1610 LOCATE 23,20,1:COLOR 11:INPUT;"Enter Category Number: ";I$:IF I$=""THEN 1160 1620 IF VAL(I$)=20 THEN 1630 ELSE IF VAL(I$)>=NE THEN BEEP:LOCATE 23,45:PRINT " ":GOTO 1610 1630 LOCATE 23,10:INPUT;"Enter New Name or 'd' to Delete or 'q' to Quit: ";A$:IF A$=""THEN 1160 ELSE IF A$="d"OR A$="D"THEN 3060 1640 IF A$="q"OR A$="Q"THEN 1160 ELSE IF LEN(A$)>15 THEN LOCATE 23,59,0:PRINT SPACE$(20);:BEEP:GOTO 1630 ELSE GOSUB 2680 1650 LOCATE 23,10,0:PRINT SPC(15):GOSUB 2500:PRINT"Is New Name OK? (y/n/q): y ";:LOCATE 23,46 1660 Q$=INKEY$:IF Q$=""THEN 1660 ELSE IF Q$="q"OR Q$="Q"THEN 1600 ELSE IF Q$="n"OR Q$="N"THEN PRINT"N":GOTO 1600 ELSE 1670 1670 I=VAL(I$):DA$(I)=A$:KILL DRV$+"cat":GOSUB 2140:GOTO 1600 1680 CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,30:COLOR 13:PRINT"CHANGE/DELETE AN ITEM":LOCATE 4,30:COLOR 11:PRINT"_____________________":GOSUB 2080:NA=0:LOCATE 23,20:COLOR 11:INPUT;"Enter Category Number";CA$:IF CA$=""THEN 1160 1690 CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,30:COLOR 13:PRINT"CHANGE/DELETE AN ITEM":LOCATE 4,30:COLOR 11:PRINT"_____________________":CA=VAL(CA$):RB=DC(CA):GOSUB 2160 1700 LOCATE 6,5:COLOR 11:IF DA$(CA)="X"THEN PRINT"CATEGORY DOES NOT EXIST":GOTO 1710 ELSE PRINT"CATEGORY = ";DA$(CA):GOTO 1730 1710 LOCATE 23,30,1:BEEP:PRINT"Press <ENTER> to Quit: "; 1720 Q$=INKEY$:IF Q$=""THEN 1720 ELSE 1680 1730 IF NA=0 THEN 1750 ELSE LOCATE 23,20,1:COLOR 11:BEEP:PRINT"NO ITEMS TO CHANGE - PRESS ENTER: "; 1740 Q$=INKEY$:IF Q$=""THEN 1740 ELSE 1680 1750 R=8:FOR I=1 TO 10:IF DB$(I)=""THEN EA=I:GOTO 1780 1760 LOCATE R,1:COLOR 11:PRINT I:LOCATE R,5:COLOR 12:PRINT DB$(I);DD$(I):R=R+1:NEXT:R=8:FOR I=11 TO 20:IF DB$(I)=""THEN EA=I:GOTO 1780 1770 LOCATE R,45:COLOR 11:PRINT I:LOCATE R,49:COLOR 12:PRINT DB$(I);DD$(I):R=R+1:NEXT 1780 LOCATE 23,20:COLOR 11:INPUT"Enter Item Number to Change: ";I$:IF I$=""THEN 1680 ELSE IF VAL(I$)=>EA THEN BEEP:LOCATE 23,51:PRINT " ":GOTO 1780 ELSE 1790 1790 I=VAL(I$):RC=(DC(CA)-1+I):GOSUB 2240:LOCATE 19,5:COLOR 13:PRINT"ITEM NAME DESCRIPTION ALLOTTED IN STOCK PRICE":LOCATE 20,5:COLOR 11:PRINT"--------- ----------- -------- -------- ----- 1800 LOCATE 21,5:COLOR 12:PRINT SH$;SPACE$(4);SI$;SPACE$(6);SF;SPACE$(10);SJ;SPACE$(7);SK$ 1810 LOCATE 23,10,0:PRINT SA$:LOCATE 23,10,1:COLOR 11:INPUT"Enter Item Name or 'q' to Quit or 'd' to Delete: ";NF$ 1820 IF NF$="q"OR NF$="Q"THEN 1690 ELSE IF NF$="d"OR NF$="D"THEN 2320 ELSE IF LEN(NF$)>15 THEN LOCATE 23,59,0:PRINT SPACE$(20);:BEEP:GOTO 1810 ELSE IF NF$=""THEN NF$=SH$ 1830 A$=NF$:GOSUB 2680:NF$=A$:LOCATE 21,5,0:PRINT SPACE$(15);:LOCATE 21,5:COLOR 11:PRINT NF$:LOCATE 23,10,0:PRINT SD$:LOCATE 23,20,1:COLOR 11:INPUT"Enter Description: ";NG$:IF NG$=""THEN NG$=SI$ 1840 A$=NG$:IF LEN(A$)>15 THEN LOCATE 23,40,0:PRINT SPACE$(25);:BEEP:GOTO 1430 ELSE GOSUB 2680:NG$=A$:LOCATE 21,24,0:PRINT SPACE$(15);:LOCATE 21,24:COLOR 11:PRINT NG$ 1850 GOSUB 2500:INPUT"Enter Allotment: ";NH:IF NH=0 THEN NH=SF 1860 LOCATE 21,45:COLOR 11:PRINT NH:GOSUB 2500:INPUT"Enter In Stock: ";NB:IF NB=0 THEN NB=SJ 1870 LOCATE 21,58:COLOR 11:PRINT NB:GOSUB 2500:INPUT"Enter Unit Price: ";NI$:IF NI$=""THEN NI$=SK$ 1880 LOCATE 21,69:COLOR 11:PRINT NI$:GOSUB 2500:PRINT"Is Item Okay? (y/n): y";:LOCATE 23,43 1890 Q$=INKEY$:IF Q$=""THEN 1890 ELSE IF Q$="n"OR Q$="N"THEN PRINT"N":GOSUB 2490:GOTO 1780 1900 NE=RC:GOSUB 2490:GOSUB 2230:GOTO 1690 1910 CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,32:COLOR 13:PRINT"DISPLAY AN ITEM":LOCATE 4,32:COLOR 11:PRINT"_______________":GOSUB 2080:NA=0:LOCATE 23,29:COLOR 11:INPUT;"Enter Category Number";CA$:IF CA$=""THEN 1160 1920 CLS:LOCATE 1,32:COLOR 13:PRINT"FILE MAINTENANCE":LOCATE 3,32:COLOR 13:PRINT"DISPLAY AN ITEM ":LOCATE 4,32:COLOR 11:PRINT"_______________ ":CA=VAL(CA$):RB=DC(CA):GOSUB 2160:IF LEFT$(DA$(CA),1)="X"THEN CB$="EMPTY" ELSE CB$=DA$(CA) 1930 LOCATE 6,5:COLOR 11:PRINT CB$;:PRINT" CATEGORY":IF NA=0 THEN 1950 ELSE LOCATE 23,20,1:BEEP:COLOR 11:PRINT"NO ITEMS TO DISPLAY - PRESS ENTER: "; 1940 Q$=INKEY$:IF Q$=""THEN 1940 ELSE 1910 1950 R=8:FOR I=1 TO 10:IF DB$(I)=""THEN EA=I:GOTO 1980 1960 LOCATE R,1,0:COLOR 11:PRINT I:LOCATE R,5:COLOR 12:PRINT DB$(I);DD$(I):R=R+1:NEXT:R=8:FOR I=11 TO 20:IF DB$(I)=""THEN EA=I:GOTO 1980 1970 LOCATE R,45:COLOR 11:PRINT I:LOCATE R,49:COLOR 12:PRINT DB$(I);DD$(I):R=R+1:NEXT 1980 LOCATE 23,25,1:COLOR 11:INPUT"ENTER ITEM NUMBER TO DISPLAY: ";I$:IF I$=""THEN 1910 ELSE IF VAL(I$)=>EA THEN BEEP:LOCATE 23,56:PRINT " ":GOTO 1980 ELSE LOCATE 23,25:PRINT SA$ 1990 I=VAL(I$):RC=(DC(CA)-1+I):GOSUB 2240:LOCATE 19,5,0:COLOR 13:PRINT"ITEM NAME DESCRIPTION ALLOTTED IN STOCK PRICE":LOCATE 20,5:COLOR 11:PRINT"--------- ----------- -------- -------- ----- 2000 LOCATE 21,5:COLOR 12:PRINT SH$;SPACE$(4);SI$;SPACE$(6);SF;SPACE$(10);SJ;SPACE$(7);SK$:LOCATE 23,29,1:COLOR 11:PRINT"PRESS <ENTER> TO QUIT: "; 2010 Q$=INKEY$:IF Q$=""THEN 2010 ELSE LOCATE 23,10,0:PRINT SA$:GOSUB 2480:GOTO 1980 2020 FOR I=1 TO 20:DB$(I)="":DD$(I)="":DE(I)=0:DG$(I)="":NEXT:GOSUB 2670:I=1:FOR RC=RB TO RB+19:GET#1,RC:IF LEFT$(NME$,1)=" "AND RC=RB THEN CLOSE:NA=1:NJ=RB:RETURN 2030 IF LEFT$(NME$,1)=" "THEN CLOSE:NJ=RC:RETURN 2040 DB$(I)=NME$:DD$(I)=DJ$:DE(I)=CVI(AA$):DK=CVI(IA$):DG$(I)=PA$:I=I+1:NEXT:CLOSE:RETURN 2050 KILL DRV$+"cat":OPEN DRV$+"cat" FOR OUTPUT AS #1:FOR I=1 TO 20:WRITE#1,DA$(I),DC(I):NEXT:WRITE#1,LA$:CLOSE:OPEN DRV$+"cat" FOR INPUT AS #1:FOR I=1 TO 20:IF EOF(1)THEN CLOSE:RETURN 2060 INPUT#1,CAT$,REC:DA$(I)=CAT$:DC(I)=REC:NEXT:INPUT#1,LA$:CLOSE:RETURN 2070 GOSUB 2670:LSET NME$=DB$(I):LSET DJ$=DD$(I):RSET AA$=MKI$(DE(I)):RSET IA$=MKI$(NB):RSET PA$=DG$(I):PUT#1,RC:CLOSE:RETURN 2080 R=8:IF DA$(20)<>"X"THEN OC=1:M=19 ELSE M=20 2090 FOR I=1 TO 10:IF DA$(I)="X"THEN NE=I:IF OC THEN 2120 ELSE RETURN 2100 LOCATE R,10,0:COLOR 11:PRINT I;:LOCATE R,16:COLOR 12:PRINT DA$(I):R=R+1:NEXT:R=8:FOR I=11 TO M:IF DA$(I)="X"THEN NE=I:IF OC THEN 2120 ELSE RETURN 2110 LOCATE R,45:COLOR 11:PRINT I;:LOCATE R,51:COLOR 12:PRINT DA$(I):R=R+1:NEXT 2120 IF OC THEN I=20:LOCATE 17,45:COLOR 11:PRINT I;:LOCATE 17,51:COLOR 12:PRINT DA$(I) 2130 RETURN 2140 OPEN DRV$+"cat" FOR APPEND AS #1:FOR I=1 TO 20:IF DA$(I)=""THEN CLOSE:RETURN 2150 WRITE#1,DA$(I),DC(I):NEXT:WRITE#1,LA$:CLOSE:RETURN 2160 FOR I=1 TO 20:DB$(I)="":DD$(I)="":DF(I)=0:DE(I)=0:DG$(I)="":NEXT:GOSUB 2670:I=1:FOR RC=RB TO RB+19:GET#1,RC:J=ASC(MID$(NME$,1,1)):IF J=0 AND RC=RB THEN CLOSE:NA=1:NJ=RB:RETURN 2170 IF J=32 AND RC=RB THEN CLOSE:NA=1:NJ=RB:RETURN 2180 IF J>96 AND J<123 AND RC=RB THEN CLOSE:NA=1:NJ=RB:RETURN 2190 IF J=0 THEN CLOSE:NJ=RC:RETURN 2200 IF J=32 THEN CLOSE:NJ=RC:RETURN 2210 IF J>96 AND J<123 THEN CLOSE:NJ=RC:RETURN 2220 DB$(I)=NME$:DD$(I)=DJ$:DE(I)=CVI(AA$):DF(I)=CVI(IA$):DG$(I)=PA$:I=I+1:NEXT:CLOSE:RETURN 2230 GOSUB 2670:LSET NME$=NF$:LSET DJ$=NG$:RSET AA$=MKI$(NH):RSET IA$=MKI$(NB):RSET PA$=NI$:PUT#1,NE:CLOSE:RETURN 2240 GOSUB 2670:GET#1,RC:CLOSE:SH$=NME$:SI$=DJ$:SF=CVI(AA$):SJ=CVI(IA$):SK$=PA$:RETURN 2250 IF ERL=50 THEN GOSUB 2700:RESUME 60 2260 IF ERL=60 THEN GOSUB 2470:RESUME 60 2270 IF ERL=1130 THEN RESUME 1140 2280 IF ERL=2630 THEN CLOSE#2:BEEP:RESUME 2620 2290 IF ERL<>2610 THEN 2310 ELSE CLOSE#2:BEEP:GOSUB 2500:PRINT"NO FILES - PRESS ENTER: "; 2300 Q$=INKEY$:IF Q$=""THEN 2310 ELSE RESUME 1480 2310 CLS:PRINT ERR;" at";ERL:STOP 2320 LOCATE 23,10,0:PRINT SC$:LOCATE 23,20,1:PRINT"Delete Item? (y/n): y";:LOCATE 23,41 2330 Q$=INKEY$:IF Q$=""THEN 2330 ELSE IF Q$="y"OR Q$="Y"OR Q$=CHR$(13)THEN 2340 ELSE LOCATE 23,40:PRINT"N":GOTO 1690 2340 LOCATE 23,41:PRINT"Y":GOSUB 2670 2350 GET#1,RC+1:J=ASC(MID$(NME$,1,1)):IF J=0 OR J=32 THEN 2360 ELSE PUT#1,RC:GOTO 2370 2360 LSET NME$=" ":PUT#1,RC:CLOSE:GOTO 1690 2370 IF RC+1=RB+19 THEN CLOSE:GOTO 1690 2380 RC=RC+1:GOTO 2350 2390 CLS:LOCATE 12,25:COLOR 12:PRINT"CURRENT DATE IS ";:COLOR 11:PRINT DATE$:LOCATE 14,25:COLOR 12:PRINT"LAST UPDATE WAS ON ";:COLOR 11:PRINT LA$:LOCATE 20,24:COLOR 13:PRINT"Clear Item File totals? (y/n/q) n";:COLOR 11:LOCATE 20,57 2400 Q$=INKEY$:IF Q$=""THEN 2400 ELSE PRINT Q$:IF Q$=CHR$(13)OR Q$="n"OR Q$="N"THEN RETURN ELSE IF Q$="q"OR Q$="Q"THEN 80 2410 GOSUB 2670:CLS:LOCATE 12,25,0:COLOR 12:PRINT"DELETING TOTALS FROM ITEM FILE":FOR I=21 TO 420:GET#1,I:J=ASC(MID$(NME$,1,1)):IF J=0 THEN 2440 2420 PC=CVI(PC$):IF PC=0 THEN 2440 2430 TOT=0:RSET TOT$=MKI$(TOT):PC=0:RSET PC$=MKI$(PC):PUT#1,I 2440 NEXT:CLOSE:LOCATE 20,23,1:COLOR 11:PRINT"FINISHED - PRESS <ENTER> TO RETURN: ";:LOCATE 20,59 2450 Q$=INKEY$:IF Q$=""THEN 2450 ELSE CLS:RETURN 2460 PRINT ERR;:PRINT" at ";:PRINT ERL:STOP 2470 OPEN DRV$+"cat" FOR APPEND AS #1:CAT$="X":REC=21:FOR I=1 TO 19:WRITE#1,CAT$,REC:REC=REC+20:NEXT:CAT$="OTHER STORES ":REC=1:WRITE#1,CAT$,REC:LA$=DATE$:WRITE#1,LA$:CLOSE#1:RETURN 2480 FOR R=19 TO 21:LOCATE R,1,0:PRINT SE$:NEXT R:RETURN 2490 FOR R=19 TO 23:LOCATE R,1,0:PRINT SE$:NEXT R:RETURN 2500 LOCATE 23,20,0:PRINT SA$:LOCATE 23,20,1:COLOR 11:RETURN 2510 CLS:LOCATE 2,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 4,30:COLOR 13:PRINT"RE-ORDER CATEGORIES":LOCATE 23,20,1:COLOR 11:PRINT"Use an Existing Order File? (y/n) n";:LOCATE 23,55 2520 Q$=INKEY$:IF Q$=""THEN 2520 ELSE IF Q$="y"THEN PRINT Q$:GOSUB 2610:RETURN ELSE PRINT"n 2530 GOSUB 2080:GOSUB 2500:R=7:FOR I=1 TO NE-1 2540 LOCATE 23,28,1:PRINT"Enter Row # ";:PRINT I;:LINE INPUT RW$:ROW$(I)=RW$:IF RW$=""THEN BEEP:GOTO 2540 ELSE RW=VAL(RW$):RA=RW:IF RA>10 THEN C=40:RA=RA-10 ELSE C=5 2550 TA$(I)=DA$(RW):OA(I)=DC(RW):LOCATE 23,43:PRINT" ":LOCATE R+RA,C:PRINT I:NEXT:OA(NE)=DC(20):TA$(NE)=DA$(20):LOCATE 23,20,0:PRINT SL$:LOCATE 23,20,1:PRINT"Order OK? (y/n): y";:LOCATE 23,38 2560 QQ$=INKEY$:IF QQ$=""THEN 2560 ELSE IF QQ$=CHR$(13)THEN PRINT"y":GOTO 2570 ELSE PRINT "N":GOTO 2510 2570 GOSUB 2500:PRINT"Save this Order (y/n)? n";:LOCATE 23,44 2580 Q$=INKEY$:IF Q$=""THEN 2580 ELSE IF Q$=CHR$(13)THEN 680 ELSE PRINT"Y":GOSUB 2500:INPUT"Name for Order (default .STR): ";SG$ 2590 OPEN DRV$+SG$+".str" FOR APPEND AS #2:FOR I=1 TO 20:IF TA$(I)=""THEN CLOSE:RETURN 2600 WRITE#2,TA$(I),OA(I):NEXT:CLOSE#2:RETURN 2610 LOCATE 23,20,0:PRINT SA$:LOCATE 8,1:FILES DRV$+"*.str 2620 LOCATE 23,20,1:LINE INPUT"Select File to use (default .STR): ";SG$:IF SG$=""THEN 2510 2630 OPEN DRV$+SG$+".str" FOR INPUT AS #2:FOR I=1 TO 20:IF EOF(2)THEN 2660 2640 INPUT#2,TA$(I),OA(I):IF TA$(I)=""THEN 2660 2650 NEXT 2660 CLOSE#2:RETURN 2670 OPEN DRV$+"items" AS #1 LEN = 43:FIELD #1,15 AS NME$,15 AS DJ$,2 AS AA$,2 AS IA$,5 AS PA$,2 AS TOT$,2 AS PC$:RETURN 2680 FOR W=1 TO LEN(A$):J=ASC(MID$(A$,W,1)):IF J>96 AND J<123 THEN J=J-32:MID$(A$,W,1)=CHR$(J) 2690 NEXT:RETURN 2700 CLS:LOCATE 12,24:COLOR 11:PRINT"CREATING ITEM FILE - PLEASE WAIT":A=1:EC=400 2710 OPEN DRV$+"items" AS #1 LEN = 43:FIELD #1,43 AS NME$:FOR I=A TO EC:GET#1,I:LSET NME$=" ":PUT#1,I:NEXT:CLOSE:RETURN 2720 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,35,0:COLOR 13:PRINT"STATISTICS":LOCATE 4,35:COLOR 11:PRINT"__________":LOCATE 8,25:COLOR 11:PRINT"< 1 > ";:COLOR 12:PRINT"PURCHASES BY ITEM 2730 LOCATE 10,25:COLOR 11:PRINT"< 2 > ";:COLOR 12:PRINT"MAIN MENU":LOCATE 23,30,1:COLOR 11:PRINT"Enter Selection: "; 2740 Q$=INKEY$:IF Q$=""THEN 2740 ELSE IF Q$=CHR$(13)OR Q$="2"THEN 80 ELSE IF Q$="1"THEN 2750 2750 CLS:LOCATE 1,32:COLOR 13:PRINT"SHOPPING PROGRAM":LOCATE 3,35,0:COLOR 13:PRINT"STATISTICS":LOCATE 4,35:COLOR 11:PRINT"__________":GOSUB 2080:LOCATE 23,20:COLOR 11:INPUT;"Enter Category Number";CA$:IF CA$=""THEN 2720 2760 CLS:LOCATE 1,24:COLOR 13:PRINT"ITEM STATISTICS - ";:COLOR 11:PRINT"SINCE ";:PRINT LA$:CA=VAL(CA$):RB=DC(CA):FOR I=1 TO 20:DB$(I)="":DD$(I)="":DE(I)=0:DI(I)=0:DH(I)=0:NEXT:GOSUB 2670:I=1 2770 FOR RC=RB TO RB+19:GET#1,RC:J=ASC(MID$(NME$,1,1)):IF J=0 AND RC=RB THEN CLOSE:NA=1:NJ=RB:GOTO 2840 2780 IF J=32 AND RC=RB THEN CLOSE:NA=1:NJ=RB:GOTO 2840 2790 IF J>96 AND J<123 AND RC=RB THEN CLOSE:NA=1:NJ=RB:GOTO 2840 2800 IF J=0 THEN CLOSE:NJ=RC:GOTO 2840 2810 IF J=32 THEN CLOSE:NJ=RC:GOTO 2840 2820 IF J>96 AND J<123 THEN CLOSE:NJ=RC:GOTO 2840 2830 DB$(I)=NME$:DD$(I)=DJ$:DE(I)=CVI(AA$):DK=CVI(IA$):DI(I)=CVI(TOT$):DH(I)=CVI(PC$):I=I+1:NEXT 2840 CLOSE:NA=0:GOSUB 2160:IF NA=0 THEN 2860 ELSE GOSUB 2500:BEEP:PRINT"NO ITEMS TO DISPLAY - PRESS ENTER: "; 2850 Q$=INKEY$:IF Q$=""THEN 2850 ELSE 2750 2860 R=3:LOCATE 2,1,0:COLOR 12:PRINT"ITEM NAME DESCRIPTION ALLOTTED PURCHASES TOTAL BOUGHT":FOR I=1 TO 20:IF DB$(I)=""THEN EA=I:GOTO 2880 2870 LOCATE R,1:COLOR 11:PRINT I:LOCATE R,10:COLOR 13:PRINT DB$(I);:LOCATE R,27:PRINT DD$(I);:LOCATE R,47:PRINT DE(I);:LOCATE R,58:PRINT DI(I);:LOCATE R,71:PRINT DH(I):R=R+1:NEXT 2880 LOCATE 23,25,1:COLOR 11:PRINT"END OF LIST - PRESS <ENTER>: "; 2890 Q$=INKEY$:IF Q$=""THEN 2890 ELSE 2750 2900 CLS:LOCATE 12,27,1:COLOR 11:PRINT"EXIT TO DOS? (y/n): n";:LOCATE 12,48 2910 Q$=INKEY$:IF Q$=""THEN 2910 ELSE IF Q$="y"OR Q$="Y"THEN 2930 2920 GOTO 80 2930 IF UA=0 THEN 2950 ELSE KILL DRV$+"cat":OPEN DRV$+"cat" FOR OUTPUT AS #1 2940 FOR I=1 TO 20:WRITE#1,DA$(I),DC(I):NEXT:LA$=DATE$:WRITE#1,LA$ 2950 CLOSE:CLS:COLOR 7:SYSTEM:GOSUB 540:GOTO 2960 2960 GOSUB 2670:B=1:FOR I=DC(B)TO DC(B)+19:GET#1,I:IF LEFT$(NME$,1)<>" "THEN 2980 ELSE B=B+1:NC=0 2970 IF B=21 THEN 660 ELSE 560 2980 SF=CVI(AA$):IA=CVI(IA$):PA=VAL(PA$):IF NC THEN 620 2990 IF R=>19 THEN ND=1:LOCATE 23,17,1:COLOR 11:BEEP:PRINT"PRESS ENTER FOR NEXT SCREEN OR 'q' TO QUIT: ";:GOTO 630 3000 IF ND THEN 610 ELSE R=R+1 3010 LOCATE R,1:COLOR 13:PRINT DA$(B):R=R+2:ND=1:NC=1:GOTO 650 3020 Q$=INKEY$:IF Q$=""THEN 3020 ELSE IF Q$="q"OR Q$="Q"THEN CLOSE:GOTO 80 3030 GOSUB 540:IF ND AND LEFT$(NME$,1)<>" "THEN LOCATE R,1:COLOR 13:PRINT DA$(B):ND=0:R=R+2 3040 LOCATE R,5,0:COLOR 12:PRINT NME$;SPACE$(4);DJ$;SPACE$(6);SF;SPACE$(10);IA;:LOCATE R,65:PRINT USING "$$##.##";PA:R=R+1:NEXT I:CLOSE:COLOR 13:LOCATE 23,20,1:BEEP:PRINT"END OF LIST - PRESS ENTER FOR MAIN MENU: "; 3050 Q$=INKEY$:IF Q$=""THEN 3050 ELSE 80 3060 A=VAL(I$):LOCATE 23,10,0:PRINT SPACE$(69);:LOCATE 23,32,1:PRINT"Delete? (y/n): n";:LOCATE 23,48,1 3070 Q$=INKEY$:IF Q$=""THEN 3070 ELSE IF Q$=CHR$(13)OR Q$="n"OR Q$="N"THEN LOCATE 23,20,0:PRINT SA$:GOTO 1610 3080 CLS:LOCATE 12,28,0:COLOR 11:PRINT"RE-CREATING CATEGORY FILE":DA$(A)="D":DL=0:NK=0:NL=DC(A):FOR I=1 TO 19:IF DA$(I+1)="X"THEN DA$(I)=DA$(I+1):DC(I)=NL:GOTO 3110 3090 IF DA$(I)="D"OR DL THEN DA$(I)=DA$(I+1):DC(I)=DC(I+1):DL=1 3100 NEXT 3110 KILL DRV$+"cat":OPEN DRV$+"cat"FOR APPEND AS #1:FOR I=1 TO 20:WRITE#1,DA$(I),DC(I):NEXT:WRITE#1,LA$:CLOSE:CLS:BEEP:LOCATE 12,28,0:COLOR 11:PRINT" ERASING ITEM RECORDS ":A=NL:EC=NL+19:GOSUB 2710:GOTO 1600